package com.ruoyi.source.api.domain;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;
import java.util.List;

/**
 * 货物质检对象 src_check_record
 * 
 * @author ruoyi
 * @date 2024-07-23
 */
@TableName("src_check_record")
@Data
@NoArgsConstructor
@AllArgsConstructor
public class SrcCheckRecord extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /** 主键 */
    @TableId(type = IdType.AUTO)
    private Long checkId;

    /** 货物id */
    @Excel(name = "货物id")
    private Long goodsId;

    /** 货物类型0农作物信息1加工厂信息 */
    @Excel(name = "货物类型0农作物信息1加工厂信息")
    private Long goodsType;

    /** 质检数量 */
    @Excel(name = "质检数量")
    private String checkName;

    /** 质检结果 0通过 1不通过 */
    @Excel(name = "质检结果 0通过 1不通过")
    private String status;

    /** 质检图片 */
    @Excel(name = "质检图片")
    private String img;

    /** 0正常 1删除 */
    @TableLogic
    @Excel(name = "0正常 1删除")
    private String isFault;

    /** 质检时间 */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @Excel(name = "质检时间")
    private Date checkTime;


    @Excel(name = "检测员")
    private Long inspectors;


    @TableField(exist = false)
    private String inspectorsName;


    /** 批准人*/
    @Excel(name = "批准人")
    private String ratifyPeople;

    /** 审核方式 */
    @Excel(name = "审核方式")
    private String checkType;


    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @TableField(exist = false)
    private Date startTime;


    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    @TableField(exist = false)
    private Date endTime;


    @TableField(exist = false)
    private String goodsName;

    @TableField(exist = false)
    private String batchNum;


    @TableField(exist = false)
    private String xdata;

    @TableField(exist = false)
    private String ydata;

    @TableField(exist = false)
    private List<SrcCity> children;



    public Long getGoodsType() {
        return goodsType;
    }

    public void setGoodsType(Long goodsType) {
        this.goodsType = goodsType;
    }

    public Long getCheckId() {
        return checkId;
    }

    public void setCheckId(Long checkId) {
        this.checkId = checkId;
    }

    public Long getGoodsId() {
        return goodsId;
    }

    public void setGoodsId(Long goodsId) {
        this.goodsId = goodsId;
    }

    public String getCheckName() {
        return checkName;
    }

    public void setCheckName(String checkName) {
        this.checkName = checkName;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getImg() {
        return img;
    }

    public void setImg(String img) {
        this.img = img;
    }

    public String getIsFault() {
        return isFault;
    }

    public void setIsFault(String isFault) {
        this.isFault = isFault;
    }

    public Date getCheckTime() {
        return checkTime;
    }

    public void setCheckTime(Date checkTime) {
        this.checkTime = checkTime;
    }

    public Long getInspectors() {
        return inspectors;
    }

    public void setInspectors(Long inspectors) {
        this.inspectors = inspectors;
    }

    public String getRatifyPeople() {
        return ratifyPeople;
    }

    public void setRatifyPeople(String ratifyPeople) {
        this.ratifyPeople = ratifyPeople;
    }

    public String getCheckType() {
        return checkType;
    }

    public void setCheckType(String checkType) {
        this.checkType = checkType;
    }

    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public String getGoodsName() {
        return goodsName;
    }

    public void setGoodsName(String goodsName) {
        this.goodsName = goodsName;
    }

    public String getBatchNum() {
        return batchNum;
    }

    public void setBatchNum(String batchNum) {
        this.batchNum = batchNum;
    }

    @Override
    public String toString() {
        return "SrcCheckRecord{" +
                "checkId=" + checkId +
                ", goodsId=" + goodsId +
                ", checkName=" + checkName +
                ", status='" + status + '\'' +
                ", img='" + img + '\'' +
                ", isFault='" + isFault + '\'' +
                ", checkTime=" + checkTime +
                ", inspectors='" + inspectors + '\'' +
                ", ratifyPeople='" + ratifyPeople + '\'' +
                ", checkType='" + checkType + '\'' +
                '}';
    }
}
